/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package bllInterface;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.rmi.RemoteException;
import java.util.ArrayList;

/**
 *
 * @author Mrkupi
 */
public interface iRoom extends iChatUser, iChatUserListener
{
    boolean join(iChatUser user) throws RemoteException;
    boolean leave(iChatUser user) throws RemoteException;
    
    ArrayList<ChatMessage>  getHistory() throws RemoteException;
    void addFriendListener(iFriendListener listener) throws RemoteException;
    void removeFriendListener(iFriendListener listener) throws RemoteException;
    
    ByteArrayInputStream getInputStream() throws RemoteException;
    IRemoteBufferedOutputStream getOutputStream() throws RemoteException;
    
    void setInputStream( InputStream stream ) throws RemoteException;
    void setOutputStream( RemoteBufferedOutputStream stream ) throws RemoteException;
}
